From afc4cb5c5c5d4c20e2bf984d3efa49c9582a04fa Mon Sep 17 00:00:00 2001 From: Debian Qt/KDE Maintainers Date: Sun, 2 Aug 2020 09:49:03 +0100 Subject: [PATCH] enable accessibility on Linux when org.a11y.Status IsEnabled is true Origin: upstream, https://code.qt.io/cgit/qt/qtbase.git/commit/?id=54886d7f81175ac6 Last-Update: 2020-04-16 Otherwise accessibility would only work when Orca is set to be started in the session preference, and it would not work when running Orca or compiz' zoom by hand. The existing comment said that it was always true since gnome 3.6, but at least in Debian 8's gnome 3.14, Debian 9's gnome 3.22, and Debian 10's 3.30 it is not always true, it is Orca which sets it on startup. Compiz's focuspoll module also does so for people with low vision using zoom with focus tracking. Gbp-Pq: Name enable_a11y_on_linux.diff --- src/platformsupport/linuxaccessibility/dbusconnection.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/platformsupport/linuxaccessibility/dbusconnection.cpp b/src/platformsupport/linuxaccessibility/dbusconnection.cpp index cacbfdae9..45ddc8e49 100644 --- a/src/platformsupport/linuxaccessibility/dbusconnection.cpp +++ b/src/platformsupport/linuxaccessibility/dbusconnection.cpp @@ -120,8 +120,7 @@ void DBusConnection::serviceRegistered() //debugging. static const bool a11yAlwaysOn = qEnvironmentVariableIsSet("QT_LINUX_ACCESSIBILITY_ALWAYS_ON"); - // a11yStatus->isEnabled() returns always true (since Gnome 3.6) - bool enabled = a11yAlwaysOn || a11yStatus->screenReaderEnabled(); + bool enabled = a11yAlwaysOn || a11yStatus->screenReaderEnabled() || a11yStatus->isEnabled(); if (enabled != m_enabled) { m_enabled = enabled; -- 2.30.2